\documentclass[11pt]{article} 

\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{latexsym}
\usepackage{ctex}
\usepackage{enumitem}

\addtolength{\textheight}{4.5cm}
\addtolength{\voffset}{-2.4cm}
\addtolength{\textwidth}{3.7cm}
\addtolength{\hoffset}{-2.2cm}   

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% listings 是一个非常强大的 LaTeX 宏包，用于在文档中插入和格式化源代码。
%% 它提供了丰富的功能来高亮显示各种编程语言的语法，并且可以自定义代码的外观。
\usepackage{listings}
\usepackage{color}

% 设置列表的样式
\definecolor{codegreen}{rgb}{0,0.6,0}
\definecolor{codegray}{rgb}{0.5,0.5,0.5}
\definecolor{codepurple}{rgb}{0.58,0,0.82}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92} %背景颜色为淡土色
%\definecolor{backcolour}{rgb}{1,1,1} %背景颜色为白色

\lstdefinestyle{mystyle}{
    backgroundcolor=\color{backcolour},   
    commentstyle=\color{codegreen},
    keywordstyle=\color{magenta},
    numberstyle=\tiny\color{codegray},
    stringstyle=\color{codepurple},
    basicstyle=\ttfamily\footnotesize,
    breakatwhitespace=false,         
    breaklines=true,                 
    captionpos=b,                    
    keepspaces=true,                 
    numbers=left,                    
    numbersep=5pt,                  
    showspaces=false,                
    showstringspaces=false,
    showtabs=false,                  
    tabsize=2
}

\lstset{style=mystyle}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\usepackage{titling}
\setlength{\droptitle}{-2cm} %文档标题上移 

\title{《高等代数中的算法（R与Python辅助版）》提纲}
%\subtitle{}
\author{高等代数课程教学小组} 
%\date{2025年3月9日}
\date{\today}

\begin{document}

\maketitle

%DPSK：面向大学一年级的初学者，写一本使用R语言和Python辅助计算的高等代数的讲义，请列一个提纲，内容包括多项式、矩阵、行列式、线性方程组、线性空间、线性变换、欧氏空间、二次型。

\begin{abstract}
从算法角度学习高等代数。通过``问题-算法-编程-定理-概念''的路径，先熟悉相关问题和计算过程，然后再总结一般规律和代数概念。又名《从算法和编程角度来复习高等代数》。
%通过将理论推导与编程实践结合，本讲义旨在帮助初学者“看见”高代，理解数学符号背后的计算逻辑。
%适用对象：大学一年级数学/统计/计算机专业学生。
%目标：结合编程实践（R/Python代码示例）理解抽象的代数概念，培养计算思维。
\end{abstract}


\begin{enumerate}

\item  \underline{多项式与多项式方程} %第1章
 
    \begin{enumerate}[label={(\arabic*)}]
    \item  求最大公因式（辗转相除法）
    \item  分解因式
    \item  判断不可约多项式（复系数、实系数、有理系数：艾森斯坦判别法）
    \item  求解多项式方程、求有理根、求解多项式方程组   
    \item  判断多项式是否有重因式与重根

%    \item  概念：次数、系数、根、重根、不可约多项式
%    \item  运算：加减乘除、带余除法、因式分解、最大公因式、最小公倍式
%    
%        \begin{enumerate}
%        \item      Python示例：用SymPy分解 \( x^3 - 6x^2 + 11x - 6 \)  
%        \item      R示例：`polynom'包求多项式根  
%        \end{enumerate}
%    
%    \item  定理：带余除法定理、贝祖定理、因式分解定理、艾森斯坦判别法、韦达定理
%%      1. 带余除法定理：任意多项式可唯一表示为 \( f(x) = q(x)g(x) + r(x) \)。  
%%      2. 贝祖定理：多项式 \( f(x), g(x) \) 的最大公因式可表为 \( d(x) = u(x)f(x) + v(x)g(x) \)。  
%%      3. 因式分解定理：数域上多项式可唯一分解为不可约多项式的乘积。  
%%      4. 艾森斯坦判别法：判定整系数多项式在有理数域上不可约。  
%%      5. 韦达定理：多项式根与系数的关系。  
%        
%    \item  多项式方程求解：有理根定理、数值逼近法  
%    \item  应用案例：多项式插值在数据拟合中的实现  
    \end{enumerate}

\item  \underline{矩阵与线性方程组} %第2章

    \begin{enumerate}[label={(\arabic*)}]
    \item  矩阵的加减、数乘、乘法、转置、求逆、初等变换
    \item  验证矩阵乘法的结合律与交换律是否成立
    \item  分块矩阵的加减、数乘、乘法、转置、求逆、初等变换
    \item  高斯消元法、矩阵的行最简形
    \item  求线性方程组的通解
    \item  求矩阵的LU分解

%    \item  概念：零矩阵、单位矩阵、对角矩阵、对称矩阵、反对称矩阵、正交矩阵、幂等矩阵
%    \item  运算：加减、数乘、乘法、转置、求逆、分块矩阵、初等变换
%    
%        \begin{enumerate}
%        \item    Python示例：NumPy实现矩阵乘法与转置  
%        \item    R示例：`Matrix'包的矩阵操作  
%        \end{enumerate}
%    
%    \item  定理：矩阵乘法结合律、逆矩阵存在条件、秩-零化度定理、分块矩阵求逆公式
%%      1. 矩阵乘法结合律：\( (AB)C = A(BC) \)。  
%%      2. 逆矩阵存在条件：\( A \) 可逆当且仅当 \( \det(A) \neq 0 \)。  
%%      3. 秩-零化度定理：\( \text{rank}(A) + \text{nullity}(A) = n \)（\( A \) 为 \( m \times n \) 矩阵）。  
%%      4. 分块矩阵求逆公式：若 \( A, D \) 可逆，则分块矩阵逆可表示为 \( \begin{pmatrix} A & B \\ C & D \end{pmatrix}^{-1} \)。  
%
%    \item  应用案例：矩阵在图像像素表示中的应用  
    \end{enumerate}


\item  \underline{矩阵的行列式与秩} %第3章

    \begin{enumerate}[label={(\arabic*)}]
    \item  求矩阵的行列式（化为上三角形、按一行或一列展开、按多行或多列展开）
    \item  求矩阵的秩（计算所有子式、行阶梯形）
    \item  求矩阵的伴随矩阵
    \item  验证行列式乘积公式
    
    
%    \item  概念：排列、展开式、行列式、子式、矩阵的秩、线性相关性
%    \item  计算：行列式性质、三角化法、Laplace展开  
%    
%        \begin{enumerate}
%        \item     Python示例：SymPy计算4阶行列式  
%        \item     R示例：`det()'函数求行列式  
%        \end{enumerate}
%    
%    \item   定理：行列式乘法定理、克拉默法则、行列式与矩阵可逆性
%%      1. 行列式乘法定理：\( \det(AB) = \det(A)\det(B) \)。  
%%      2. 克拉默法则：线性方程组 \( A\boldsymbol{x} = \boldsymbol{b} \) 的解为 \( x_i = \frac{\det(A_i)}{\det(A)} \)。  
%%      3. 行列式与矩阵可逆性：\( \det(A) \neq 0 \iff A \) 可逆。    
%     
%    \item  应用案例：行列式在几何体积计算中的意义、线性变换缩放因子
    \end{enumerate}

  
\item  \underline{线性方程组与线性空间} %第4章

    \begin{enumerate}[label={(\arabic*)}]
    \item  求齐次线性方程组的基础解系（线性无关的向量组、线性相关的向量组）
%    \item  求齐次线性微分方程的通解
    \item  求线性空间的基与维数
    \item  求向量组的秩（极大线性无关组）
    \item  求线性子空间的交空间与和空间的基与维数
    \end{enumerate}
    
%    \item  概念：齐次与非齐次方程组、基础解系与解空间维数
%    \item  方法：高斯消元法、矩阵的LU分解  
%    
%        \begin{enumerate}
%        \item     Python示例：用NumPy求解 \( Ax = b \)  
%        \item     R示例：`solve()'函数解方程组  
%        \end{enumerate}
%    
%    \item  定理：克拉默法则、解的存在性定理（秩条件）、齐次方程组解结构、非齐次方程组通解  
%%      1. 解的存在性定理：\( A\boldsymbol{x} = \boldsymbol{b} \) 有解当且仅当 \( \text{rank}(A) = \text{rank}([A|\boldsymbol{b}]) \)。  
%%      2. 齐次方程组解结构：解空间维数为 \( n - \text{rank}(A) \)。  
%%      3. 非齐次方程组通解：特解 + 齐次通解。  
%
%    \item  应用案例：电路网络方程的建模与求解  
%
%    \item  线性空间的定义与例子（\(\mathbb{R}^n\)、多项式空间）  
%    \item  向量组的线性相关性与极大无关组  
%    \item  基与坐标变换、线性子空间  
%    
%        \begin{enumerate}
%        \item     Python示例：用SymPy验证向量组的线性无关性  
%         \item    R示例：`qr()'函数求基的正交化  
%        \end{enumerate}
%    
%    \item  应用案例：RGB颜色空间的线性表示  
%
%- 核心概念  
%  1. 线性空间定义（加法与数乘封闭性）  
%  2. 基、维数与坐标  
%  3. 子空间交与和、直和分解  
%
%- 核心定理  
%  1. 基的存在性与维数唯一性：任意线性空间存在基，且所有基的维数相同。  
%  2. 维数公式：\( \dim(U_1 + U_2) = \dim(U_1) + \dim(U_2) - \dim(U_1 \cap U_2) \)。  
%  3. 直和分解条件：\( U_1 + U_2 \) 是直和当且仅当 \( U_1 \cap U_2 = \{0\} \)。  


\item  \underline{线性变换与矩阵表示} %第5章

    \begin{enumerate}[label={(\arabic*)}]
    \item  用矩阵和向量表示平面上的旋转、伸缩、平移、反射、投影
    \item  用矩阵和向量表示立体空间中的旋转、伸缩、平移、反射、投影
    \item  求线性变换的特征值与特征向量
    \item  求矩阵的特征值与特征向量
    \item  将矩阵相似于对角矩阵与若尔当标准形
    \end{enumerate}
        
%    \item  线性变换的定义与性质  
%    \item  线性变换的矩阵表示：基变换公式  
%    
%        \begin{enumerate}
%        \item     Python示例：绘制旋转变换的几何效果  
%         \item    R示例：`ggplot2'可视化投影变换  
%        \end{enumerate}
%    
%    \item  特征值与特征向量、相似矩阵、对角化  
%    \item  应用案例：图像压缩中的奇异值分解（SVD）  

%- 核心概念  
%  1. 线性变换定义与矩阵表示  
%  2. 特征值、特征向量与特征子空间  
%  3. 不变子空间与若尔当标准形  
%
%- 核心定理  
%  1. 线性变换的矩阵表示定理：线性变换在基下的矩阵唯一。  
%  2. 特征值性质：不同特征值对应的特征向量线性无关。  
%  3. 若尔当标准形定理：复数域上线性变换可化为若尔当块对角矩阵。  
%  4. 谱定理（实对称矩阵）：实对称矩阵可正交对角化。  



\item  \underline{欧氏空间与正交矩阵} %第6章

    \begin{enumerate}[label={(\arabic*)}]
    \item  计算平面与立体空间中两个向量的长度与夹角
    \item  计算点到平面的距离
    \item  计算向量在子空间的投影
    \item  用正交矩阵表示平面与立体空间中的旋转与反射
    \item  使用Gram-Schmidt方法求标准正交基
    \item  求矩阵的QR分解
    \end{enumerate}

%    \item  内积与欧氏空间的定义（柯西不等式、勾股定理）  
%    \item  正交基与Gram-Schmidt正交化  
%    
%        \begin{enumerate}
%        \item     Python示例：实现Gram-Schmidt过程  
%        \item     R示例：`prcomp()'函数的主成分分析（PCA）  
%        \end{enumerate}
%       
%    \item  正交变换与对称变换  
%    \item  应用案例：人脸识别中的PCA降维  
%
%- 核心概念  
%  1. 内积定义与性质  
%  2. 标准正交基与施密特正交化  
%  3. 正交补与正交投影  
%
%- 核心定理  
%  1. 施密特正交化过程：任意线性无关向量组可正交单位化。  
%  2. 正交投影定理：欧氏空间中任意向量可唯一分解为子空间及其正交补中的分量。  
%  3. 谱定理（实对称变换）：实对称变换的特征向量正交。  



\item  \underline{实二次型与实对称阵} %第7章

    \begin{enumerate}[label={(\arabic*)}]
    \item  用配方法把实二次型化为标准形
    \item  用初等变换把实二次型（实对称阵）化为标准形
    \item  用正交变换把实二次型（实对称阵）化为标准形
    \item  用顺序主子式判断实二次型（实对称阵）是否正定
    \item  验证实二次型的惯性定理（正、负惯性指数、秩、符号差）
    \item  求正定对称矩阵的Cholesky分解
    \end{enumerate}
%    \item  二次型的矩阵表示  
%    \item  合同变换与标准形（配方法、惯性定理）  
%    
%        \begin{enumerate}
%        \item     Python示例：用SymPy化二次型为标准形  
%         \item    R示例：`eigen()'函数求二次型特征值  
%        \end{enumerate}
%    
%    \item  正定二次型的判定  
%    \item  应用案例：优化问题中的二次型极值分析  
%
%- 核心概念  
%  1. 二次型矩阵表示与合同变换  
%  2. 标准形与规范形（配方法、正交变换法）  
%  3. 惯性定理与正定性  
%
%- 核心定理  
%  1. 惯性定理：实二次型的正负惯性指数在合同变换下不变。  
%  2. 正定二次型判定：对称矩阵正定当且仅当所有顺序主子式为正。  
%  3. 主轴定理：实二次型可通过正交变换化为标准形。  


\item  \underline{线性方程组与线性映射} %第8章

    \begin{enumerate}[label={(\arabic*)}]
    \item  求线性映射的像空间与核空间
    \item  求线性映射的秩与零度、验证线性映射的秩与零度的和等于维数
    \item  求超定线性方程组的最小二乘解       
    \item  求矩阵的SVD分解
    \end{enumerate}
    
    

%\item  \underline{附录}
%
%    \begin{enumerate}[label={(\arabic*)}]
%    \item  R/Python介绍与安装  
%    \item  常用线性代数库速查表（NumPy/SymPy/R Matrix/pracma）  
%    \item  综合练习题与代码答案  
%    \end{enumerate}


%\item  \underline{教学特色}
%
%    \begin{enumerate}[label={(\arabic*)}]
%    \item  双语言对比：每个知识点均提供R和Python双版本代码，适应不同编程偏好。  
%    \item  可视化优先：通过图形（如矩阵变换动画、特征向量方向图）直观展示抽象概念。  
%    \item  问题驱动：每章以实际应用问题引入，激发学习动机。  
%    \item  代码即实验：提供可修改的代码模板，鼓励学生通过修改参数观察数学现象。  
%    \end{enumerate}
%
%\item  \underline{示例代码片段（第2章矩阵乘法）}
%
%\begin{lstlisting}[language=python]
%import numpy as np
%A = np.array([[1, 2], [3, 4]])
%B = np.array([[5, 6], [7, 8]])
%print("A × B = \n", np.dot(A, B))
%\end{lstlisting}
%
%\begin{lstlisting}[language=R]
%A <- matrix(c(1,3,2,4), nrow=2, byrow=TRUE)
%B <- matrix(c(5,7,6,8), nrow=2, byrow=TRUE)
%print("A × B = "); A %*% B
%\end{lstlisting}


\end{enumerate}

\end{document}

